#include "circle.h"
#include "vector.h"

using namespace BaseGeo;

Circle::Circle() : center(Point(0.0, 0.0)), radius(1.0) {}

Circle::Circle(const Point& center, const double radius) :
    center(center), radius(radius) {}


bool Circle::IsPointInThis(const Point& point_x) const
{
    Vector center_to_point_v = Vector(center, point_x);

    return center_to_point_v.Length() < radius;
}


std::ostream& operator<<(std::ostream& stream, const BaseGeo::Circle& circle)
{
    stream << "center: " << circle.center << " r: " << circle.radius;

    return stream;
}